package regexp;

import regexp.utils.RegExpFind;

/**
 * @author DCSGO
 * @version 1.0
 * 字符匹配符2
 */
@SuppressWarnings({"all"})
public class Regexp03 {
    public static void main(String[] args) {
        //6 \\d 表示可以匹配O-9的任意一个数字,相当于[0-9]。
        RegExpFind.printFind("1234abcd56", "\\d");
        /**
         * \d匹配到：
         * 1 2 3 4 5 6
         */

        //7 \\D 表示可以匹配不是0-9中的任意一个数字,相当于[^0-9]

        RegExpFind.printFind("1234abcd56", "\\D");
        /**
         * \D匹配到：
         * a b c d
         */

        //8 \\w匹配任意英文字符、数字和下划线,相当于[a-zA-Z0-9_]
        RegExpFind.printFind("1/2@3_4a-b,?c\nd5E6F好哇", "\\w");
        /**
         * \w匹配到：
         * 1 2 3 _ 4 a b c d 5 E 6 F
         */

        //9 \\W相当于[^a-zA-Z0-9 ]与\\w刚好相反.
        RegExpFind.printFind("1/2@3_4a-b,?c\nd5E6F好哇", "\\W");
        /**
         * / @ - , ?
         *  好 哇
         */

        //10 \\s 匹配任何空白字符(空格,制表符等)
        RegExpFind.printFind("1/2@3_4a-b,?c\nd5 E   6F好哇", "\\s");
        /**
         * \s匹配到：
         *
         *
         */

        //11 \\S 匹配任何非空白字符，和\\s刚好相反
        RegExpFind.printFind("1/2@3_4a-b,?c\nd5 E   6F好哇", "\\S");
        /**
         * \S匹配到：
         * 1 / 2 @ 3 _ 4 a - b , ? c d 5 E 6 F 好 哇
         */

        //12 . 匹配出 \n 之外的所有字符,如果要匹配.本身则需要使用 \\.
        RegExpFind.printFind("1/2@3_4a-b,?c\nd5 E   6F好哇 .", ".");
        /**
         * .匹配到：
         * 1 / 2 @ 3 _ 4 a - b , ? c d 5   E       6 F 好 哇   .
         */
    }
}
